package com.EAsystem.service;

import com.EAsystem.entity.Attendance;
import com.github.pagehelper.PageInfo;

import java.util.List;
import java.util.Map;

public interface AttendanceService {
    
    // 添加考勤记录
    boolean addAttendance(Attendance attendance);
    

    
    // 更新考勤记录
    boolean updateAttendance(Attendance attendance);
    
    // 删除考勤记录
    boolean deleteAttendance(Long id);
    
    // 根据ID查询考勤记录
    Attendance getAttendanceById(Long id);
    

    
    // 根据学生ID查询考勤记录
    List<Attendance> getAttendancesByStudentId(Integer studentId);
    

    

    

    

    
    // 分页查询所有考勤记录
    PageInfo<Attendance> getAllAttendancesWithPage(int pageNum, int pageSize);
    
    // 条件查询考勤记录
    PageInfo<Attendance> getAttendancesByConditionWithPage(Attendance attendance, int pageNum, int pageSize);
    
    // 统计学生在某课程的出勤情况
    Map<String, Integer> countAttendanceStatusByStudentIdAndCourseId(Integer studentId, Integer courseId);
    

}